label: Allocate gadget before using it
authorMatthias Clasen <mclasen@redhat.com>
Sat, 19 Dec 2015 05:33:20 +0000 (00:33 -0500)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 19 Dec 2015 05:33:20 +0000 (00:33 -0500)
Move the gtk_css_gadget_allocate call before the
gtk_label_update_layout_width call. This fixes the
statusbar label in widget-factory page 2 coming
up fully ellipsized.

gtk/gtklabel.c

index 3f41d25c8bb7bb2c0776c69caca5066892536494..f7e1445bbaf34cd5dade04cf931b9c6bced67451 100644 (file)
@@ -4084,6 +4084,11 @@ gtk_label_size_allocate (GtkWidget     *widget,
 
   GTK_WIDGET_CLASS (gtk_label_parent_class)->size_allocate (widget, allocation);
 
+  gtk_css_gadget_allocate (priv->gadget,
+                           allocation,
+                           gtk_widget_get_allocated_baseline (widget),
+                           &clip);
+
   if (priv->layout)
     gtk_label_update_layout_width (label);
 
@@ -4094,11 +4099,6 @@ gtk_label_size_allocate (GtkWidget     *widget,
                             allocation->width,
                             allocation->height);
 
-  gtk_css_gadget_allocate (priv->gadget,
-                           allocation,
-                           gtk_widget_get_allocated_baseline (widget),
-                           &clip);
-
   gtk_label_get_ink_rect (label, &clip_rect);
   gdk_rectangle_union (&clip_rect, &clip, &clip_rect);
   _gtk_widget_set_simple_clip (widget, &clip_rect);